package com.glsc.ngateway.common.base.domain.mysql.opmanage.report.excel;

import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;

import javax.persistence.*;
import java.util.Date;

@Data
@Entity
@Table(name = "t_gltb_fund_list")
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
@IdClass(GltbFundListId.class)
public class GltbFundList {
    @Id
    @Column(name="fc_name")
    @ExcelProperty("产品名称")
    private String name;

    @Column(name="fc_type")
    @ExcelProperty("产品类别")
    private String type;

    @Column(name="fc_record_date")
    @ExcelProperty("基协备案日期")
    private String recordDate;

    @Column(name="fc_subscription")
    @ExcelProperty("基金总规模（万元）-认缴")
    private String subscription;

    @Column(name="fc_paid_in")
    @ExcelProperty("基金总规模（万元）-实缴")
    private String paidIn;

    @Column(name="fc_scale")
    @ExcelProperty("自有资金参与规模")
    private String scale;

    @Column(name="fc_status")
    @ExcelProperty("基金状态")
    private String status;

    @Column(name="fc_investment_direction")
    @ExcelProperty("主要投资方向")
    private String investmentDirection;

    @Column(name="fc_partner_information")
    @ExcelProperty("合伙人信息")
    private String partnerInformation;

    @Column(name="fc_fee_reward")
    @ExcelProperty("费用与业绩报酬")
    private String feeReward;

    @Column(name="fc_is_master_fund")
    @ExcelProperty("是否母基金")
    private String isMasterFund;

    @Id
    @Column(name="fd_date")
    private Date date;

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getType() {
        return type;
    }

    public String getRecordDate() {
        return recordDate;
    }

    public void setRecordDate(String recordDate) {
        this.recordDate = recordDate;
    }

    public String getSubscription() {
        return subscription;
    }

    public void setSubscription(String subscription) {
        this.subscription = subscription;
    }

    public String getPaidIn() {
        return paidIn;
    }

    public void setPaidIn(String paidIn) {
        this.paidIn = paidIn;
    }

    public String getScale() {
        return scale;
    }

    public void setScale(String scale) {
        this.scale = scale;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getStatus() {
        return status;
    }

    public String getInvestmentDirection() {
        return investmentDirection;
    }

    public void setInvestmentDirection(String investmentDirection) {
        this.investmentDirection = investmentDirection;
    }

    public String getPartnerInformation() {
        return partnerInformation;
    }

    public void setPartnerInformation(String partnerInformation) {
        this.partnerInformation = partnerInformation;
    }

    public String getFeeReward() {
        return feeReward;
    }

    public void setFeeReward(String feeReward) {
        this.feeReward = feeReward;
    }

    public String getIsMasterFund() {
        return isMasterFund;
    }

    public void setIsMasterFund(String isMasterFund) {
        this.isMasterFund = isMasterFund;
    }

    public Date getDate() {
        return date;
    }

    public void setDate(Date date) {
        this.date = date;
    }
}
